Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Chassis][Voq]Update sonic-buffer-queue and sonic-queue for Voq Chassis #18875

Merged
merged 3 commits into from
May 16, 2024

Conversation

arlakshm
Copy link
Contributor

@arlakshm arlakshm commented May 6, 2024

Why I did it

The configuration for QUEUE and BUFFER_QUEUE differs between a VOQ device and a Non-VOQ devices.
For the Voq device:
The queue and buffer queue is applied on the system port. The system port is a representation of every port in a chassis, the key for systemport consists of Linecard Name , Asic Name and portname
On a Non voq device:
the queue and buffer queue configuration is applied on the front panel port.

Due to this differences the yang models sonic-queue.yang and sonic-buffer-queue.yang does not work for Voq devices
This is address in this PR

Work item tracking
  • Microsoft ADO (27252773 and 27252696):

How I did it

Update the yang model to have different CONFIG_LIST with different keys based on the following condition

  • when the switch_type is not present or switch_type is not voq, the yang LIST will have key of port and queue_index
  • when the switch_type is present and switch_type is voqhe yang LIST will have key of Linecard name, asi name, port and queue_index

How to verify it

UT and incremental config push on chassis

Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111
  • 202205
  • 202211
  • 202305

Tested branch (Please provide the tested image version)

Description for the changelog

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

@arlakshm arlakshm marked this pull request as ready for review May 8, 2024 02:54
@arlakshm arlakshm requested a review from qiluo-msft as a code owner May 8, 2024 02:54
@arlakshm arlakshm added Chassis 🤖 Modular chassis support chassis-voq Voq chassis changes Chassis for 202205 branch PRs needed for 202205 branch in msft repo YANG YANG model related changes labels May 8, 2024
@qiluo-msft qiluo-msft requested a review from ganglyu May 13, 2024 21:31
@ganglyu
Copy link
Contributor

ganglyu commented May 13, 2024

It seems that you want to add two new tables, would you please update same_config_db.json and cofiguration.md?


key "hostname asic_name port qindex";


Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick: remove extra space

(/sdm:sonic-device_metadata/sdm:DEVICE_METADATA/sdm:localhost/sdm:switch_type='voq')";
key "hostname asic_name ifname qindex";


Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: remove extra line

@kenneth-arista
Copy link
Contributor

Besides the minor nitpicks, the changes look good to me.

@rlhui rlhui added the P0 Priority of the issue label May 15, 2024
@lguohan lguohan merged commit c710002 into sonic-net:master May 16, 2024
19 checks passed
@gechiang gechiang added the Included in Chassis for 202205 Branch Indicate PR is already in MSFT repo 202205 branch label Jun 5, 2024
mlok-nokia pushed a commit to mlok-nokia/sonic-buildimage that referenced this pull request Jun 5, 2024
…is (sonic-net#18875)

Why I did it

The configuration for QUEUE and BUFFER_QUEUE differs between a VOQ device and a Non-VOQ devices.
For the Voq device:
The queue and buffer queue is applied on the system port. The system port is a representation of every port in a chassis, the key for systemport consists of Linecard Name , Asic Name and portname
On a Non voq device:
the queue and buffer queue configuration is applied on the front panel port.

Due to this differences the yang models sonic-queue.yang and sonic-buffer-queue.yang does not work for Voq devices
This is address in this PR

Microsoft ADO (27252773 and 27252696):

How I did it
Update the yang model to have different CONFIG_LIST with different keys based on the following condition

when the switch_type is not present or switch_type is not voq, the yang LIST will have key of port and queue_index
when the switch_type is present and switch_type is voqhe yang LIST will have key of Linecard name, asi name, port and queue_index
How to verify it
UT and incremental config push on chassis
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Chassis for 202205 branch PRs needed for 202205 branch in msft repo Chassis 🤖 Modular chassis support chassis-voq Voq chassis changes Included in Chassis for 202205 Branch Indicate PR is already in MSFT repo 202205 branch P0 Priority of the issue YANG YANG model related changes
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

7 participants